1. Field
The technology described in this patent document relates generally to the field of video signal processing More specifically, systems and methods are disclosed for performing geometrical predistortion of graphics source signals in software prior to merging the graphics source signals with an input video signal for display.
2. Related Art
There are many situations in the field of video signal processing in which one or more video signals are geometrically predistorted by the processing circuitry prior to being output to the video display device. One example of this occurs in video projectors that may project an image onto an angled surface. When doing so, the normally rectangular video image appears on the surface as a trapezoid. This is known as the keystone effect. In order to compensate for this trapezoidal appearance of the normally rectangular video image, the projector may employ a hardware predistortion circuit that predistorts the normally rectangular video image so that when it is projected onto the angled surface the image is rectangular.
In addition to this hardware predistortion circuit, it is also common in modern video projection or display devices to employ one or more video scaling devices, also typically implemented in hardware, which scale the source input video signal to an output video signal, typically at a different resolution or aspect ratio from the input video signal.
FIG. 1 is a depiction of a video scaler operation on an input video. In this figure, the top portion of the depiction 30 represents the top of a video frame, and the bottom portion represents the bottom of the frame. The dashed line represents the missing remainder of the video frame. Here, the squares represent the input pixels and the triangles represent the output pixels from the scaler. As shown in FIG. 1, the video scaler is reducing the resolution of the input signal, but it may also increase the video resolution or even change the aspect ratio of the input video signal, such as by scaling a 4:3 aspect ratio signal typical of low-definition broadcast television into a 16:9 widescreen signal.
FIG. 2 is a block diagram of a typical hardware-implemented video scaler 40. This device, which can be used for the scaling operations noted above, and which also can be used for the predistortion function, includes a plurality of linestores 42, a plurality of registers 50, a plurality of multipliers 44, 52, and two adders 48, 56. The top portion of the scaler 40 receives the video input signal and sequentially buffers the input signal into one of the plurality of input linestores 42. These buffered video signals are then multiplied 44 by a first set of coefficients 46 that are selected based on the vertical pixel position of the desired output signal and then added together 48 to form a vertically scaled intermediate video signal. The vertically scaled intermediate video signal is then, in similar fashion, buffered in a set of registers 50 and multiplied by a second set of coefficients 54 that are selected based on the horizontal pixel position of the desired output. These multiplied outputs are then added together in the adder 56 to form the scaled video output signal. The circuitry shown in FIG. 2 can be very costly, particularly for high resolution scaling devices because the cost is proportional to the number of filter taps and the number of line stores to perform the vertical and horizontal scaling operation.
FIG. 3 is block diagram of a known system 10 for scaling and predistorting a merged input video signal 12 and graphics source signals 16. The graphics source signals 16 may be, for example, an on-screen display graphic overlay that is operated by a user of the video display device to change the operating characteristics of the display. In the system 10 shown in FIG. 3, the input video signal 12 is input to a first hardware scaler 14, which performs conversion of the resolution or aspect ratio of the input video signal to an output resolution or output aspect ratio as defined by the video display device in which the system 10 is operating. The output from the first hardware scaler is then merged with the graphic overlay from the graphics source 16 by the multiplexing device 18. This merged output video and graphic overlay signal is then processed by the second hardware scaler 20, which performs the above-described geometrical predistortion function on the merged signals.
When combining graphical source signals with input video signals, as shown in FIG. 3, it is not desirable to scale the resolution or aspect ratio of the graphical source signals, as it is the input video signal 12, but it is desirable to predistort both signal sources. In order to accomplish this separation, the system 10 must employ at least two hardware scalers 14, 20, a first hardware scaler 14 devoted to scaling just the input video signal, and a second hardware scaler 20 devoted to scaling the merged video/graphics signals in order to perform the predistortion function. Having two distinct hardware scalers, however, is costly and inefficient, for the reasons noted above.